package com.yidu.ladder.system.service.impl;

import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.yidu.ladder.system.dao.LogDao;
import com.yidu.ladder.system.domain.Log;
import com.yidu.ladder.system.domain.LogVo;
import com.yidu.ladder.system.service.LogService;

/**
 * 日志业务逻辑实现类
 * @author bamboo
 *
 */
@Service
public class LogServiceImpl implements LogService{
	@Autowired
	private LogDao dao;
	/**
	 * 得到日志dao
	 * @return 日志dao
	 */
	public LogDao getDao() {
		return dao;
	}
	/**
	 * 设置日志dao
	 * @param dao 日志dao
	 */
	public void setDao(LogDao dao) {
		this.dao = dao;
	}

	@Override
	public Map<String, Object> pageQueryLog(LogVo logVo) {
		//实现分类
		logVo.setPage((logVo.getPage() -1) * logVo.getLimit());
		//调用dao层方法进行查询
		List<Log> list = dao.pageQueryLog(logVo);
		//查询记录数
		int count = dao.countLog(logVo);
		//创建map对象接收数据
		Map<String, Object> map = new HashMap<String, Object>();
		//前端需要的格式
		map.put("code", 0);
		//存放查询数量
		map.put("count", count);
		//存放数据
		map.put("data", list);
		//返回map
		return map;
	}

	@Override
	public boolean addLog(Log log) {
		//添加日志，如果结果为1返回true，否则返回false
		return dao.addLog(log) == 1?true :false;
	}

	@Override
	public List<Log> selectLogByLogTime(Date startTime, Date stopTime) {
		//查询日志操作时间
		return dao.selectLogByLogTime(startTime, stopTime);
	}

	@Override
	public boolean deleteLogByLogTime(Date startTime, Date stopTime) {
		//根据操作日期删除日志，如果为1 就返回true，否则返回
		return dao.deleteLogByLogTime(startTime, stopTime) == 1 ?true :false;
	}
	
	
	
}
